package com.naiterui.ehp.bs.patient.vo.inquirer;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.naiterui.ehp.bp.utils.date.DateUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import java.io.Serializable;
import java.util.Date;

/**
 * @Description 就诊人VO
 * @Author gongbaoqiang
 * @Date 2020/7/8 11:41 AM
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ToString
@ApiModel("就诊人VO")
public class InquirerVO implements Serializable {
    private static final long serialVersionUID = 5789097495552607799L;

    /**
     * 是否可选择: 1:是，2：否
     */
    public static final int CAN_CHOOSE_YES = 1;
    public static final int CAN_CHOOSE_NO = 2;

    @ApiModelProperty("就诊人id")
    private Long inquirerId;

    @ApiModelProperty(value = "就诊人姓名")
    private String name;

    /**
     * 性别
     */
    @ApiModelProperty(value = "性别")
    private Integer gender;

    /**
     * 年龄
     */
    @ApiModelProperty(value = "年龄")
    private String age;

    /**
     * 身份证号：<code>idNo</code>
     */
    @ApiModelProperty(value = "身份证号")
    private String idCard;

    @ApiModelProperty(value = "出生日期")
    @JsonFormat(pattern = DateUtil.DATE_FORMAT)
    private Date birthday;

    @ApiModelProperty(value = "出生证明图片")
    private String birthImage;

    @ApiModelProperty(value = "与患者关系")
    private Integer relation;

    @ApiModelProperty(value = "与患者关系名称")
    private String relationName;

    @ApiModelProperty(value = "监护人姓名")
    private String guardianName;

    @ApiModelProperty(value = "监护人身份证号")
    private String guardianIdCard;

    @ApiModelProperty(value = "监护人电话")
    private String guardianPhone;

    @ApiModelProperty(value = "是否可选择: 1:是，2：否")
    private Integer canChoose;

    @ApiModelProperty(value = "是否本人")
    private Boolean myself;

    @ApiModelProperty("省信息")
    private Integer provinceId;
    @ApiModelProperty("市信息")
    private Integer cityId;
    @ApiModelProperty("区信息")
    private Integer areaId;

    @ApiModelProperty("省市区文字")
    private String addressPrefix;
    @ApiModelProperty("居住地址")
    private String address;

    @ApiModelProperty("紧急联系人姓名")
    private String contactName;

    @ApiModelProperty("紧急联系人电话")
    private String contactPhone;

    @ApiModelProperty("婚姻状况：0未婚；1已婚")
    private Short maritalStatus;

    @ApiModelProperty("是否有HIS病例")
    private Boolean hisRecord;

    @ApiModelProperty("低龄儿童标识(0，否；1，是)")
    private Integer childTag;

    @ApiModelProperty(value = "过敏史")
    private String allergy;

    @ApiModelProperty(value = "既往史")
    private String pastHistory;

    @ApiModelProperty(value = "就诊人电话")
    private String phone;
}
